﻿using System;
using System.Collections.Generic;
using System.Text;
using Jc.MicroDesigner.Objects;

namespace Jc.MicroDesigner.Exceptions
{
    /// <summary>
    /// Тип сигнала
    /// </summary>
    public enum SignalType
    {
        /// <summary>
        /// Входной
        /// </summary>
        In,

        /// <summary>
        /// Выходной
        /// </summary>
        Out
    }

    /// <summary>
    /// Исключение для неверных входных сигналов
    /// </summary>
    public class IncorrectSignalException : Exception
    {
        /// <summary>
        /// Создать исключение
        /// </summary>
        /// <param name="element">Элемент</param>
        /// <param name="pin">Пин</param>
        /// <param name="stype">Тип сигнала</param>
        public IncorrectSignalException(CircuitElement element, PIN pin,SignalType stype ) : base("Неверный сигнал на элементе")
        {
            this.Data.Add("Element", element.Name);
            this.Data.Add("PIN", pin.Name);
            this.Data.Add("Type", stype.ToString());
        }
    }
}